package com.datawale.vh.demo.work.mapper;

import com.datawale.vh.demo.work.domain.Role;
import com.datawale.vh.demo.work.domain.role.Resource;
import com.datawale.vh.demo.work.domain.user.UserRoleRelation;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 后台用户与角色关系管理自定义Dao
 */
@Service
public interface UserRoleRelationDao {
    /**
     * 批量插入用户角色关系
     */
    int insertList(@Param("list") List<UserRoleRelation> adminRoleRelationList);

    /**
     * 获取用于所有角色
     */
    List<Role> getRoleList(@Param("adminId") Long adminId);

    /**
     * 获取用户所有可访问资源
     */
    List<Resource> getResourceList(@Param("adminId") Long adminId);

    /**
     * 获取资源相关用户ID列表
     */
    List<Long> getAdminIdList(@Param("resourceId") Long resourceId);
}
